Dynamic Traffic Management Using Disparate Data Sources

ABSTRACT

A computer system that performs a remedial action is described. During operation, the computer system may receive information corresponding to traffic conditions in an environment (such as traffic flows in at least a portion of a city), where the information is associated with different types of sources distributed in the environment, and the environment includes multiple intersections and roadways. Then, the computer system may identify an event in at least a portion of the environment based at least in part on the information, such as predicting a change in a traffic condition in the environment in a subsequent time interval. Next, the computer system may perform a remedial action based at least in part on the identified event, such as: providing an alert about the event; providing an instruction based at least in part on the event; and/or modifying traffic management in at least the portion of the environment.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims priority under 35 U.S.C. 119(e) to U.S.Provisional Application Ser. No. 63/278,261, “Dynamic Traffic ManagementUsing Disparate Data Sources,” filed on Nov. 11, 2021, by TimothyMenard, et al., the contents of which are herein incorporated byreference.

FIELD

The described embodiments relate generally to techniques for dynamictraffic management in an environment based at least in part on disparatereal-time data sources.

BACKGROUND

The large number of vehicles on roadways often results in trafficcongestion. These obstructions to traffic flow are time-consuming,frustrating to drivers and passengers, increase business expenses, andtypically result in increased pollution levels.

In principle, traffic-management systems can be used to reduce trafficcongestion and the associated negative consequences. For example, manymunicipalities have installed cameras or sensors at intersections, whichcan be used to monitor traffic flow through an intersection and detectaccidents. Moreover, the intersection cameras can be used to selectivelyadjust traffic-signal timing. Notably, infrared-signal-based preemptionmay be performed for emergency vehicles or mass-transit vehicles (suchas buses).

However, existing intersection preemption systems typically require acamera or sensor to be installed at every intersection and correspondingtransmitters to be included in the emergency vehicles or mass-transitvehicles. These features increase the cost and complexity of thesesystems. Moreover, intersection preemption systems are usually based online-of-sight, so that they often only respond to local trafficconditions for a vehicle in the immediate field of view. Furthermore,depending on where an individual traffic signal is in its cycle and theoverall traffic conditions in an environment (such as a city or amunicipality), adjusting the traffic signal may end up beingcounterproductive for an emergency vehicle or a mass-transit vehicleand/or for other vehicles on the roadways (e.g., traffic delays may beincreased). In addition, a sudden change from the usual signal timing orpattern can confuse drivers, thereby increasing the risk of an accident.

SUMMARY

In a first group of embodiments, a computer system that performs aremedial action is described. This computer system may include: aninterface circuit that communicates with electronic devices (which maybe remotely located from the computer system); a processor; and memorythat stores program instructions and a data structure. During operation,the computer system receives information corresponding to trafficconditions in an environment (such as traffic flows), where theinformation is associated with different types of sources distributed inthe environment, and the environment includes multiple intersections androadways. Then, the computer system identifies an event in at least aportion of the environment based at least in part on the information.Next, the computer system performs a remedial action based at least inpart on the identified event.

Note that the environment may include at least a portion of a city or amunicipality.

Moreover, identifying the event may be based at least in part onhistorical traffic conditions in the environment.

Furthermore, identifying the event may include predicting a change in atraffic condition in the environment in a subsequent time interval.Alternatively or additionally, identifying the event may includedetermining a change in the traffic conditions after the predictedchange has occurred. In some embodiments, identifying the event mayinclude comparing the traffic conditions to predefined signatures ofdifferent types of events. Note that identifying the event may be basedat least in part on a pretrained predictive model, such as amachine-learning model or a neural network.

Note that at least some of the information may include real-timeinformation, such as information that is received as it is acquired by agiven type of source.

Moreover, receiving the information may include accessing theinformation in memory associated with the computer system and/orreceiving the information from the different types of sources.

Furthermore, the remedial action may include: providing an alert aboutthe event (e.g., to drivers in at least the portion of the environment);providing an instruction based at least in part on the event (e.g., tothe drivers in at least the portion of the environment); and/ormodifying traffic management (such as road signage, traffic signaltiming, etc.) in at least the portion of the environment. For example,when the event includes an accident at a location in the environment,the modification to the traffic management may dynamically reduce aprobability of a future occurrence of an accident at the location.Alternatively or additionally, the alert or the instruction may beprovided to delivery vehicles, such as trucks, unmanned drones orrobots. In some embodiments, the alert or the instructions is based atleast in part on a predicted impact of or corresponding to the event ona future traffic condition, e.g., because of a modification in trafficmanagement associated with the event. Moreover, modifying the trafficmanagement may include changing: a number of vehicles in a group ofvehicles allowed through an intersection during a traffic-signal cycleand/or a spacing between vehicles in the group.

Additionally, the event may or may not be other than a traffic event andmay impact the traffic conditions. For example, the event may includeone or more of: a sporting event, an entertainment event, a weathercondition, an accident, etc.

In some embodiments, the types of data sources may include dataassociated with one or more of: emergency services calls, municipal orprivate vehicles (such as emergency-services vehicles, waste-removalvehicles, public-works vehicles, vehicles associated with anothermunicipal agency, etc.), navigation software, mass transit systems (suchas mass-transit vehicles, trains, buses, etc.), rideshare software orrideshare vehicles, calendar software (such as the planned or futureschedules of one or more individuals or organizations), parking meters,parking lots, etc.

Moreover, the remedial action may include dynamically controllingtraffic flows between different predefined regions in the environmentbased at least in part on predefined traffic parameters or constraints.

Another embodiment provides a computer-readable storage medium for usewith the computer system. When executed by the computer system, thiscomputer-readable storage medium causes the computer system to performat least some of the aforementioned operations.

Another embodiment provides a method that may be performed by thecomputer system. This method includes at least some of theaforementioned operations.

In a second group of embodiments, a computer system that determineswhether information is self-consistent is described. This computersystem may include: an interface circuit that communicates withelectronic devices (which may be remotely located from the computersystem); a processor; and memory that stores program instructions and adata structure. During operation, the computer system receivesinformation corresponding to traffic conditions in an environment (suchas traffic flows), where the information is associated with differenttypes of sources distributed in the environment, and the environmentincludes multiple intersections and roadways. Then, the computer systemdetermines whether the information is self-consistent. Next, thecomputer system selectively performs a remedial action when at leastsome of the information is not self-consistent.

Note that the environment may include at least a portion of a city or amunicipality.

Moreover, at least some of the information associated with the differenttypes of sources is redundant. For example, at least some of theredundant information is associated with a traffic condition in theenvironment and/or an intersection or roadway in the environment.

Furthermore, determining whether the information is self-consistent maybe based at least in part on predefined rules associated with historicaltraffic conditions in the environment. Additionally, determining whetherthe information is self-consistent may be based at least in part ondifferences with the historical traffic conditions and/or a predictedtraffic condition in the environment.

In some embodiments, determining whether the information isself-consistent may be based at least in part on a pretrained predictivemodel. For example, the pretrained predictive model may include amachine-learning model or a neural network.

Moreover, when the information is not self-consistent, the remedialaction may include excluding: conflicting data in the information;and/or redundant data in the information (such as duplicate ortemporally repeating data). Alternatively or additionally, the remedialaction may include bounding or limiting a modification to trafficmanagement (such as road signage, traffic signal timing, etc.) in atleast a portion of the environment based at least in part on theinformation.

Note that the types of data sources may include data associated with oneor more of: emergency services calls, municipal or private vehicles(such as emergency-services vehicles, waste-removal vehicles,public-works vehicles, vehicles associated with another municipalagency, etc.), navigation software, mass transit systems (such asmass-transit vehicles, trains, buses, etc.), rideshare software orrideshare vehicles, calendar software (such as the planned or futureschedules of one or more individuals or organizations), parking meters,parking lots, etc.

Another embodiment provides a computer-readable storage medium for usewith the computer system. When executed by the computer system, thiscomputer-readable storage medium causes the computer system to performat least some of the aforementioned operations.

Another embodiment provides a method that may be performed by thecomputer system. This method includes at least some of theaforementioned operations.

In a third group of embodiments, a computer system that dynamicallyaggregates vehicles into a group of vehicles is described. This computersystem may include: an interface circuit that communicates withelectronic devices (which may be remotely located from the computersystem); a processor; and memory that stores program instructions and adata structure. During operation, the computer system receivesinformation corresponding to traffic conditions in an environment (suchas traffic flows), where the information is associated with differenttypes of sources distributed in the environment, and the environmentincludes multiple intersections and roadways. Then, the computer systemreceives second information corresponding to start locations in theenvironment of the vehicles and destination locations in the environmentof the vehicles. Moreover, the computer system dynamically aggregatesthe vehicles into the group of vehicles based at least in part on thetraffic conditions, the start locations and the destination locations.Next, the computer system provides traffic-management instructionsaddressed to a traffic-management system, where the traffic-managementinstructions allow the vehicles to navigate through the environment asthe group of vehicles.

For example, navigating through the environment as the group of vehiclesmay include maintaining spatial proximity of the vehicles with eachother. Thus, the vehicles may collectively navigate through theenvironment as a common entity.

Another embodiment provides a computer-readable storage medium for usewith the computer system. When executed by the computer system, thiscomputer-readable storage medium causes the computer system to performat least some of the aforementioned operations.

Another embodiment provides a method that may be performed by thecomputer system. This method includes at least some of theaforementioned operations.

This Summary is provided for purposes of illustrating some exemplaryembodiments, so as to provide a basic understanding of some aspects ofthe subject matter described herein. Accordingly, it will be appreciatedthat the above-described features are examples and should not beconstrued to narrow the scope or spirit of the subject matter describedherein in any way. Other features, aspects, and advantages of thesubject matter described herein will become apparent from the followingDetailed Description, Figures, and Claims.

BRIEF DESCRIPTION OF THE FIGURES

FIG. 1 is a block diagram illustrating an example of communication amongelectronic devices in accordance with an embodiment of the presentdisclosure.

FIG. 2 is a flow diagram illustrating an example of a method forperforming a remedial action using a computer system of FIG. 1 inaccordance with an embodiment of the present disclosure.

FIG. 3 is a drawing illustrating an example of communication amongelectronic devices in FIG. 1 in accordance with an embodiment of thepresent disclosure.

FIG. 4 is a flow diagram illustrating an example of a method fordetermining whether information is self-consistent using a computersystem of FIG. 1 in accordance with an embodiment of the presentdisclosure.

FIG. 5 is a drawing illustrating an example of communication amongelectronic devices in FIG. 1 in accordance with an embodiment of thepresent disclosure.

FIG. 6 is a flow diagram illustrating an example of a method fordynamically aggregating vehicles into a group of vehicles using acomputer system of FIG. 1 in accordance with an embodiment of thepresent disclosure.

FIG. 7 is a drawing illustrating an example of communication amongelectronic devices in FIG. 1 in accordance with an embodiment of thepresent disclosure.

FIG. 8 is a drawing illustrating an example of a group of vehicles inaccordance with an embodiment of the present disclosure.

FIG. 9 is a block diagram illustrating an example of an electronicdevice in accordance with an embodiment of the present disclosure.

Note that like reference numerals refer to corresponding partsthroughout the drawings. Moreover, multiple instances of the same partare designated by a common prefix separated from an instance number by adash.

DETAILED DESCRIPTION

In a first group of embodiments, a computer system that performs aremedial action is described. During operation, the computer system(which may include one or more computers) may receive, from one or moreelectronic devices, information corresponding to traffic conditions inan environment (such as a city or a municipality), where the informationis associated with different types of sources distributed in theenvironment, and the environment includes multiple intersections androadways. Then, the computer system may identify an event in at least aportion of the environment based at least in part on the information.Note that the event may or may not be other than a traffic event, butmay impact the traffic conditions. For example, the event may includeone or more of: a sporting event, an entertainment event, a weathercondition, an accident, etc. Next, the computer system may perform theremedial action based at least in part on the identified event.

Alternatively or additionally, in a second group of embodiments, thecomputer system may determine whether the received information isself-consistent. When at least some of the information is notself-consistent, the computer system may selectively perform a secondremedial action.

In some embodiments, in a third group of embodiments, the computersystem may dynamically aggregate vehicles into a group of vehicles(which may include two or more vehicles) based at least in part on thetraffic conditions, start locations in the environment of the vehiclesand destination locations in the environment of the vehicles. Next, thecomputer system may provide traffic-management instructions addressed toa traffic-management system, where the traffic-management instructionsallow the vehicles to navigate through the environment as the group ofvehicles.

By performing the remedial action, determining whether the informationis self-consistent and/or dynamically aggregating the vehicles into thegroup of vehicles, these traffic-management techniques may reduce thecost, simplify and/or improve the performance of a traffic-managementsystem. For example, by using different types of sources, thetraffic-management techniques may avoid the siloed nature of manyexisting traffic-management systems. Moreover, the traffic-managementtechniques may provide a dynamic, real-time response to changingconditions in a coordinated or synchronized manner over a significationportion of the environment (as opposed to a local response at aparticular intersection). Furthermore, the traffic-management techniquesmay provide these capabilities without requiring additional cameras orsensors to be installed in intersections or along roadways, or to beincluded in vehicles. Consequently, the traffic-management techniquesmay reduce the cost and complexity of a traffic-management system.Additionally, by leveraging the different types of sources, thetraffic-management techniques may allow unreliable or suspect data to beeliminated or to bound or limit the impact of such data in atraffic-management system. Therefore, the traffic-management techniquesmay increase the reliability or trustworthiness of alerts, instructionsand/or remedial actions provided by or performed by a traffic-managementsystem. These capabilities of the traffic-management techniques mayresult in improved traffic conditions, increased commercial activity,and reduce pollution and carbon emissions, which are beneficial todrivers, businesses and municipalities.

Note at least a portion of the traffic-management techniques may beimplemented in a distributed or decentralized manner. Alternatively, insome embodiments, at least a portion of the traffic-managementtechniques may be implemented in a centralized manner.

In the discussion that follows, electronic devices (such as vehiclesand/or computers) may communicate packets or frames with wired and/orwireless networks (e.g., via access points, radio nodes and/or basestations) in accordance with a wired communication protocol (such as anInstitute of Electrical and Electronics Engineers or IEEE 802.3standard, which is sometimes referred to as ‘Ethernet’, or another typeof wired interface) and/or a wireless communication protocol, such as:an IEEE 802.11 standard (which is sometimes referred to as ‘Wi-Fi,’ fromthe Wi-Fi Alliance of Austin, Tex.), Bluetooth (from the BluetoothSpecial Interest Group of Kirkland, Wash.), a cellular-telephonecommunication protocol (such as 2G, 3G, 4G, 5G, Long Term Evolution orLTE, another cellular-telephone communication protocol, etc.) and/oranother type of wireless interface. In the discussion that follows,Wi-Fi, a cellular-telephone communication protocol and Ethernet are usedas an illustrative example. However, a wide variety of communicationprotocols may be used. Note that the wireless communication may occur ina variety of frequency bands, such as: a cellular-telephonecommunication band, a frequency band associated with a Citizens BandRadio Service, a Wi-Fi frequency band (such as a 2.4 GHz, a 5 GHz, a 6GHz, a 7 GHz and/or a 60 GHz frequency band), etc.

FIG. 1 presents a block diagram illustrating an example of communicationamong one or more of electronic devices 110-1 and 112 (such as acellular telephone, a vehicle, a computer, etc., and which are sometimesreferred to as ‘clients’), access point 114, base station 116 incellular-telephone network 118, and one or more computers 120 incomputer system 122 in accordance with some embodiments. For example,electronic devices 110-1 and 112 may be in an environment, such as acity, a town or a municipality. In general, the environment may includeincorporated or unincorporated regions. Moreover, the environment mayinclude multiple intersections and/or roadways. Consequently, asdiscussed further below, information about or corresponding to trafficconditions that us collected or aggregated in the environment mayinclude distributed information over a wide region (as opposed to localinformation associated with a particular intersection or a particularportion of a roadway).

Access point 114 and base station 116 may communicate with computersystem 122 via network 124 (such as the Internet) using wireless and/orwired communication (such as by using Ethernet or a communicationprotocol that is compatible with Ethernet), and may communicate withelectronic device 110-1 using wireless communication (Wi-Fi and acellular-telephone communication protocol, respectively). Note thataccess point 114 may include a physical access point and/or a virtualaccess point that is implemented in software in an environment of anelectronic device or a computer. In addition, access point 114 and/orbase station 116 may communicate with electronic device 110-1 usingwireless communication, while electronic device 112 may communicate withcomputer system 122 via network 124.

While not shown in FIG. 1 , the wired and/or wireless communication withelectronic devices 110-1 and/or 112 may further occur via an intranet, amesh network, point-to-point connections, etc., and may involve one ormore routers and/or switches. Furthermore, the wireless communicationmay involve: transmitting advertising frames on wireless channels,detecting one another by scanning wireless channels, establishingconnections (for example, by transmitting association or attachrequests), and/or transmitting and receiving packets or frames (whichmay include the association requests and/or additional information aspayloads). In some embodiments, the wired and/or wireless communicationin FIG. 1 also involves the use of dedicated connections, such as via apeer-to-peer (P2P) communication technique.

As described further below with reference to FIG. 9 , electronic device110-1, electronic device 112, access point 114, base station 116, and/orcomputers 120 may include subsystems, such as a networking subsystem, amemory subsystem and a processor subsystem. In addition, electronicdevice 110-1, access point 114 and base station 116 may include radios126 in the networking subsystems. More generally, electronic device110-1, electronic device 112 and access point 114 can include (or can beincluded within) any electronic devices with the networking subsystemsthat enable electronic device 110-1 and access point 114 to communicatewith each other using wireless and/or wired communication. This wirelesscommunication can comprise transmitting advertisements on wirelesschannels to enable access point 114 and/or electronic device 110-1 tomake initial contact or detect each other, followed by exchangingsubsequent data/management frames (such as association requests andresponses) to establish a connection, configure security options (e.g.,Internet Protocol Security), transmit and receive packets or frames viathe connection, etc. Note that while instances of radios 126 are shownin electronic device 110-1 and access point 114, one or more of theseinstances may be different from the other instances of radios 126.

As can be seen in FIG. 1 , wireless signals 128 (represented by a jaggedline) are transmitted from radio 126-1 in electronic device 110-1. Thesewireless signals may be received by radio 126-2 in access point 114.Notably, electronic device 110-1 may transmit packets or frames. Inturn, these packets or frames may be received by access point 114.Moreover, access point 114 may allow electronic device 110-1 tocommunicate with other electronic devices, computers and/or servers vianetwork 124.

Note that the communication among components in FIG. 1 may becharacterized by a variety of performance metrics, such as: a receivedsignal strength (RSSI), a data rate, a data rate for successfulcommunication (which is sometimes referred to as a ‘throughput’), anerror rate (such as a retry or resend rate), a mean-square error ofequalized signals relative to an equalization target, intersymbolinterference, multipath interference, a signal-to-noise ratio, a widthof an eye pattern, a ratio of number of bytes successfully communicatedduring a time interval (such as 1-10 s) to an estimated maximum numberof bytes that can be communicated in the time interval (the latter ofwhich is sometimes referred to as the ‘capacity’ of a communicationchannel or link), and/or a ratio of an actual data rate to an estimateddata rate (which is sometimes referred to as ‘utilization’).

In the described embodiments processing a packet or frame in electronicdevice 110-1 and/or access point 114 includes: receiving signals (suchas wireless signals 128) with the packet or frame; decoding/extractingthe packet or frame from received wireless signals 128 to acquire thepacket or frame; and processing the packet or frame to determineinformation contained in the packet or frame.

Although we describe the network environment shown in FIG. 1 as anexample, in alternative embodiments, different numbers or types ofelectronic devices may be present. For example, some embodimentscomprise more or fewer electronic devices. As another example, inanother embodiment, different electronic devices are transmitting and/orreceiving packets or frames.

As described previously, existing traffic-management solutions are ofteninflexible, expensive and complicated. As described further below withreference to FIGS. 2-8 , in order to address these problems, computersystem 122 may implement the traffic-management techniques. Notably, thetraffic-management techniques may leverage different types of sourcesdistributed through an environment to facilitate reliable real-time ordynamic traffic management.

For example, in some embodiments, computer system 122 may receiveinformation corresponding to traffic conditions in an environment (suchas traffic flows), where the information is associated with differenttypes of sources distributed in the environment, and the environmentincludes multiple intersections and roadways. For example, theinformation may be received from electronic devices 110-1 and/or 112 inan environment, such as a city or a municipality.

Then, computer system 122 may identify an event in at least a portion ofthe environment based at least in part on the information. For example,the event may be identified based at least in part on: historicaltraffic conditions in the environment; a detected previous or apredicted future change in a traffic condition in the environment (suchas in the next 5, 10, 30 or 60 min.). In some embodiments, identifyingthe event may include comparing the traffic conditions to predefinedsignatures of different types of events. Note that identifying the eventmay be based at least in part on a pretrained predictive model, such asa machine-learning model or a neural network.

Next, computer system 122 may perform a remedial action based at leastin part on the identified event. For example, computer system 122 may:provide an alert about the event (e.g., to pedestrians or drivers in atleast the portion of the environment, such as a vehicle that includeselectronic device 110-1); providing an instruction based at least inpart on the event (e.g., to the drivers in at least the portion of theenvironment); and/or modifying traffic management (such as road signage,traffic signal timing, etc.) in at least the portion of the environment(e.g., by providing instructions to a computer 130 associated with atraffic-management system).

In some embodiments, computer system 122 may check the receivedinformation to ensure that it is self-consistent, e.g., with itself orwith expected traffic conditions at a location and a given timestamp inthe environment (such as based at least in part on historical trafficconditions and/or estimated traffic conditions based at least in part onan output of a pretrained predictive model). This capability may allowcomputer system 122 to identify unreliable, suspicious or repetitivedata, and to remove or exclude such data from subsequent operations ofcomputer system 122 (such as inclusion in a dataset that is used todynamically retrain a pretrained predictive model or to determine amodification to traffic management). More generally, when information isnot self-consistent, computer system 122 may selectively perform aremedial action.

Additionally, in some embodiments, computer system 122 may dynamicallyaggregates vehicles into a group of vehicles. For example, based atleast in part on traffic conditions corresponding to the receivedinformation, as well as start locations and destination locations of thevehicles, computer system 122 may dynamically aggregate the vehiclesinto the group of vehicles. Then, computer system 122 may providetraffic-management instructions addressed to a traffic-management system(such as computer 130), where the traffic-management instructions allowthe vehicles to navigate through the environment as the group ofvehicles. For example, navigating through the environment as the groupof vehicles may include maintaining spatial proximity of the vehicleswith each other. Thus, the vehicles may collectively navigate throughthe environment as a common entity.

In these ways, the traffic-management techniques may leverage real-timecommunication with traffic signals to reduce congestion on roadways,provide coordinated right-of-way for emergency vehicles, and/or reduceaccidents at intersections with traffic signals.

While the preceding embodiments illustrated the traffic-managementtechniques being implemented via a cloud-based computer system 122, inother embodiments at least some of the aforementioned operations may beperformed locally on, e.g., electronic device 110-1 or 112. Thus,operations in the traffic-management techniques may be performed locallyor remotely.

We now describe embodiments of a method. FIG. 2 presents a flow diagramillustrating an example of a method 200 for performing a remedial actionusing a computer system, such as one or more computers 120 in computersystem 122 (FIG. 1 ). During operation, the computer system may receiveinformation (operation 210) corresponding to traffic conditions in anenvironment, where the information is associated with different types ofsources distributed in the environment, and the environment includesmultiple intersections and roadways. In the present disclosure, a‘traffic condition’ may include one or more of: a number or density ofvehicles on a portion of a roadway or proximate to an intersection;types of vehicles (such as bicycles, scooters, motorcycles, cars,trucks, buses, delivery vehicles, garbage trucks, emergency vehicles,etc.) on the portion of the roadway or proximate to the intersection; anumber of pedestrians proximate to a roadway, an intersection or at amass-transit location (such as walking on the sidewalk or waiting at abus stop); a speed of traffic; acceleration or deceleration of traffic;the occurrence of or proximity to a phase transition in traffic flow(such as stop and go traffic); disruptions or changes to traffic flow(such as an accident, police, ambulance or fire department activity,etc.); deviations of a vehicle (such as a bus) from a schedule or whenthe vehicle is on time or following the schedule; when traffic has cometo a stop, how long it has been stopped, how many vehicles are waiting,etc.; a number of people using mass transit; traffic signal states;traffic signal periods or patterns; or another factor that directly orindirectly impacts a traffic condition or reflects or indicates thetraffic condition.

Note that the environment may include at least a portion of a city or amunicipality. Moreover, at least some of the information may includereal-time information, such as information that is received as it isacquired by a given type of source. As discussed further below, this mayallow the computer system to dynamically and appropriately respond in atimely manner to changing traffic conditions in the environment.

Furthermore, receiving the information (operation 210) may includeaccessing the information in memory associated with the computer systemand/or receiving the information from the different types of sources. Insome embodiments, the types of data sources may include data associatedwith one or more of: emergency services calls, municipal or privatevehicles (such as emergency-services vehicles, waste-removal vehicles,public-works vehicles, vehicles associated with another municipalagency, autonomous-driving vehicles, etc.), navigation software, masstransit systems (such as mass-transit vehicles, trains, buses, etc.),rideshare software or rideshare vehicles, taxis, calendar software (suchas the planned or future schedules of one or more individuals ororganizations), parking meters, parking lots, airborne or terrestrialunmanned drones or robots, etc. Note that the use of or merging ofdisparate and/or geographically distributed types of sources may avoidthe adverse effects of siloed information.

Then, the computer system may identify an event (operation 212) in atleast a portion of the environment based at least in part on theinformation. Moreover, identifying the event may be based at least inpart on historical traffic conditions in the environment. Furthermore,identifying the event may include predicting a change in a trafficcondition in the environment in a subsequent time interval.Alternatively or additionally, identifying the event may includedetermining a change in the traffic conditions after the predictedchange has occurred. In some embodiments, identifying the event mayinclude comparing the traffic conditions to predefined signatures ofdifferent types of events (such as traffic conditions associated withdifferent types of events). Note that identifying the event may be basedat least in part on a pretrained predictive model, such as amachine-learning model or a neural network.

In some embodiments, the event may or may not be other than a trafficevent, but may impact the traffic conditions. For example, the event mayinclude one or more of: a sporting event, an entertainment event (suchas a concert or a theatrical performance), a weather condition, apolitical event, a conference, terrorism, etc. Alternatively, the eventmay include an accident.

Next, the computer system may perform a remedial action (operation 214)based at least in part on the identified event. For example, theremedial action may include: providing an alert about the event (e.g.,to pedestrians, cyclists or drivers in at least the portion of theenvironment); providing an instruction based at least in part on theevent (e.g., to the drivers in at least the portion of the environment);and/or modifying traffic management (such as road signage, trafficsignal timing, etc.) in at least the portion of the environment.Notably, when the event includes an accident at a location in theenvironment, the modification to the traffic management (such as atraffic-signal period or warning signs) may dynamically reduce aprobability of a future occurrence of an accident at the location.Alternatively or additionally, modifying the traffic management mayinclude changing: a number of vehicles in a group of vehicles allowedthrough an intersection during a traffic-signal cycle and/or a spacingbetween vehicles in the group. In some embodiments, where the eventincludes an emergency services response to a 911 call), modifying thetraffic management may include adjusting the timing of multiple trafficsignals along a route to allow emergency vehicles to safely andefficiently reach a destination (such as a location of the 911 call or apotential emergency) with reduced or improved transit time and reducedacceleration and deceleration.

Moreover, the alert or the instruction may be provided to deliveryvehicles, such as trucks, unmanned drones or robots. For example, thealert or instruction may provide a truck, a drone or a robot informationthat, directly or indirectly, indicates how to address the identifiedevent (such as a preferred route to a destination, specific portions ofthe environment to avoid at certain timestamps, etc.).

In some embodiments, the alert or the instructions is based at least inpart on a predicted impact of or corresponding to the event on a futuretraffic condition, e.g., because of a modification in traffic managementassociated with the event. Note that the alert or the instruction may beprovided to users or drivers (or electronic devices of users or drivers)in a synchronized or coordinated manner. For example, the alert or theinstruction may be provided in a staggered manner (such as with adetermined delay or latency) to the users or drivers in different zonesor regions in the environment based at least in part on the predictedimpact on the traffic conditions of the responses of the users ordrivers to the alert or the instruction.

In some embodiments, the computer system performs one or more optionaladditional operations (operation 216). For example, the remedial actionmay include or may be based at least in part on: dividing theenvironment into multiple zones or regions; and dynamically controllingtraffic flows between the different regions based at least in part onpredefined traffic parameters or constraints.

FIG. 3 presents a drawing illustrating an example of communication amongelectronic device 110-1, electronic device 112, computer 120-1 andcomputer 130. During the traffic-management techniques, computer 120-1may receive information 310 corresponding to traffic conditions in anenvironment. For example, computational device (CD) 312 (such as aprocessor or a graphics processing unit) in computer 120-1 may accessinformation 310 in memory 314 in computer 120-1. Alternatively oradditionally, interface circuit 316 in computer 120-1 may receiveinformation 310 from different types of sources (ToS) distributed in theenvironment, such as electronic device 110-1 and/or electronic device112. For example, electronic device 110-1 may include a municipalvehicle and electronic device 112 may include a cellular telephoneexecuting a rideshare application or a navigation (or mapping) software.

Then, computational device 312 may identify an event 324 in at least aportion of the environment based at least in part on information 310.The event 324 may be identified based at least in part on historicaltraffic conditions (HTC) 318 in the environment or predefined signatures(PS) 320 of different types of events, which are accessed in memory 314.Furthermore, identifying event 324 may include determining a change 322that occurred or predicting a change 322 in a traffic condition in theenvironment in a subsequent time interval.

Next, computational device 312 may perform a remedial action (RA) 326based at least in part on the identified event 318. For example,remedial action 326 may include: instructing 328 interface circuit 316to provide an alert 330 to drivers (e.g., via their cellular telephonesor navigation software or another application executing on theircellular telephones, such as electronic device 110-1) or an instruction332 to a traffic-management system (such as computer 130).

In some embodiments, the types of sources include data from publictransportation (such as buses) and/or any type of municipal vehicle.These information or data may indicate traffic conditions along the mainroutes or roadways in an environment, such as a city. Thus, theinformation may be received from a traffic participant and may (or maynot) be associated with location-based cellular-telephone data. In someembodiments, the information may be independent of a Global PositioningSystem (GPS). For example, the information may include or may correspondto images acquired by external and/or internal cameras on a bus oranother type of municipal vehicle. This information may allow thelocation to be determined based at least in part on street sign(s) oridentifying information associated with a particular roadway.

Note that, for a given vehicle, the data or information may include ormay indicate one or more of: whether the given vehicle (such as a bus)is on schedule (or whether there is a deviation from the schedule); aspeed of the given vehicle; a number of people on the vehicle; humanbehavior associated with the given vehicle (such as opening and/orclosing of doors); a number of people waiting to board the givenvehicle; a density of vehicles and associated traffic flow or trafficconditions in front of and/or behind the given vehicle; etc.

In some embodiments, the computer system may acquire one or more imagesfrom one or more cameras in a vehicle, such as a mass-transit vehicle.At least some of the information used in the traffic-managementtechniques may be obtained by performing an image-processing or animage-analysis technique on the one or more images. Thisimage-processing or image-analysis technique may include: an edge or aline-segment detector, a texture-based feature detector, a texture-lessfeature detector, a scale invariant feature transform (SIFT)-likeobject-detector, a speed-up robust-features (SURF) detector, abinary-descriptor (such as ORB) detector, a binary robust invariantscalable keypoints (BRISK) detector, a fast retinal keypoint (FREAK)detector, a binary robust independent elementary features (BRIEF)detector, a features from accelerated segment test (FAST) detector,and/or another image-processing or image-analysis technique.Alternatively or additionally, in some embodiments the image may beanalyzed using a pre-trained predictive or machine-learning model. Inthe present discussion, note that a pre-trained predictivemachine-learning model may have been trained using a machine-learningtechnique, such as a supervised-learning technique. Thesupervised-learning technique may include: a classification andregression tree, a support vector machine (SVM), linear regression,nonlinear regression, logistic regression, least absolute shrinkage andselection operator (LASSO), ridge regression, a random forest, and/oranother type of supervised-learning technique. In some embodiments, thepre-trained predictive or machine-learning model may include apre-trained neural network, such as a convolutional neural network or arecurrent neural network. Note that the received information may or maynot be encrypted using an encryption key or a secure hash function thatis shared by one or more electronic devices (such as computer system 122and electronic devices 110-1 and/or 112).

FIG. 4 presents a flow diagram illustrating an example of a method 400for determined whether information is self-consistent using a computersystem, such as one or more computers 120 in computer system 122 (FIG. 1). During operation, the computer system may receive information(operation 410) corresponding to traffic conditions in an environment,where the information is associated with different types of sourcesdistributed in the environment, and the environment includes multipleintersections and roadways. Note that the environment may include atleast a portion of a city or a municipality. In some embodiments, thetypes of data sources may include data associated with one or more of:emergency services calls (such as 911 calls), municipal or privatevehicles (such as emergency-services vehicles, waste-removal vehicles,public-works vehicles, vehicles associated with another municipalagency, etc.), navigation software, mass transit systems (such asmass-transit vehicles, trains, buses, etc.), rideshare software orrideshare vehicles, calendar software (such as the planned or futureschedules of one or more individuals or organizations), parking meters,parking lots, etc.

Then, the computer system may determine whether the information isself-consistent (operation 412). (More generally, the computer systemmay determine whether the information is correct or reliable.) Next, thecomputer system may selectively perform a remedial action (operation414) when at least some of the information is not self-consistent.

Note that at least some of the information associated with the differenttypes of sources may be redundant, overlapping or concerning the samething. For example, at least some of the redundant information may beassociated with a common traffic condition in the environment and/or acommon intersection or roadway in the environment. Notably, there may beinformation from at least two different types of sources that isassociated with a roadway, an intersection or a traffic condition on theroadway or in the intersection at a given timestamp. Theself-consistency of this information may be determined by comparing theinformation from the different types of sources. When there is adifference, either or both of these types of sources may be deemedunreliable or lacking self-consistency in the information. Thus, whendata from one type of source (such as a ridesharing application)indicates traffic is moving slowly (below the speed limit) at thecurrent timestamp, while data from another type of source (such as amunicipal vehicle, such as a bus) indicates that traffic is moving atthe speed limit at the current timestamp, the ridesharing-applicationdata may be deemed incorrect or unreliable because of this lack ofself-consistency.

Alternatively, a particular type of source (such as data associated withmunicipal vehicles) may be deemed to be more reliable or the types ofsources may have associated reliability values or metrics in apredefined reliability hierarchy, such as: data for municipal vehiclesmay be deemed inherently more reliable than data associated with anexternal source (outside of the municipality), such as data associatedwith a consumer application (e.g., navigation software, ridesharesoftware, etc.). In some embodiments, agreement among a majority of thetypes of sources may be deemed reliable or self-consistent, and one ormore types of sources that are outliers may be deemed unreliable orlacking self-consistence.

Furthermore, determining whether the information is self-consistent maybe based at least in part on predefined rules associated with historicaltraffic conditions in the environment (e.g., at a given timestamp). Forexample, deviations or changes from a historical traffic pattern or flow(and, more generally, a traffic condition) at the given timestamp may bedeemed suspicious (or lacking self-consistency) in the absence of anexplanation (such as the identification of an event that can impact ofthe change the traffic condition. Alternatively, determining whether theinformation is self-consistent may be based at least in part on acomparison of the traffic conditions corresponding to the informationand predicted traffic conditions (e.g., using a pretrained predictivemodel, such as a machine-learning model and/or a neural network) basedat least in part on the information and/or historical traffic conditionsin the environment (e.g., at a given timestamp).

When at least some of the information is not self-consistent or isdeemed unreliable, the remedial action may include excluding this datain the information (such as conflicting data). Alternatively oradditionally, redundant data in the information (such as duplicate ortemporally repeating data) may be deemed as lacking self-consistency andmay be removed or excluded by the computer system. Thus, repeatedinstances of the same or similar data may be ignored or removed fromconsideration is subsequent actions of the computer system (such as amodification to traffic management). This capability may allow thecomputer system to avoid a spoofing attack or a denial-of-serviceattack.

In some embodiments, the remedial action may include bounding orlimiting a modification to traffic management (such as road signage,traffic signal timing, etc.) in at least a portion of the environmentbased at least in part on the information. This capability may preventor limit an adverse impact of data that is suspect or incorrect. Forexample, the modification to the traffic management may be constrainedby one or more historical traffic conditions at a given location in atleast the portion of the environment. Consequently, the final or outputmodification to the traffic management may be determined based at leastin part on low-pass filtering, systematic underrelaxation (such aslimiting a given modification to less than a 1-5% change from previoustraffic-management parameters or settings, e.g., a traffic-signal timingor period) or averaging with the one or more historical trafficconditions and an estimated or predicted traffic condition associatedwith an initial modification to the traffic management. This may ensurethat any changes or modifications are incremental and take place over atime interval (such as up to 1, 5, 10 or 30 min).

FIG. 5 presents a drawing illustrating an example of communication amongelectronic device 110-1, electronic device 112, computer 120-1 andcomputer 130. During the traffic-management techniques, computer 120-1may receive information 510 corresponding to traffic conditions in anenvironment. For example, computational device (CD) 512 (such as aprocessor or a graphics processing unit) in computer 120-1 may accessinformation 510 in memory 514 in computer 120-1. Alternatively oradditionally, interface circuit 516 in computer 120-1 may receiveinformation 510 from different types of sources (ToS) distributed in theenvironment, such as electronic device 110-1 and electronic device 112.For example, electronic device 110-1 may include a municipal vehicle andelectronic device 112 may include a cellular telephone executing arideshare application or a navigation (or mapping) software.

Then, computational device 512 may determine whether information 510 isself-consistent (SC) 524. For example, computational device 512 maycompare information 510 to itself (such as overlapping or redundantinformation). These comparisons may involve different types of sources,and may confirm that at least a majority of the information is inagreement with each other. Outliers that differ from the majority may bedeemed unreliable or lacking self-consistency. Note that in thecomparisons, at least some of the information associated with one ormore type of sources may be deemed more reliable that informationassociated with one or more other types of sources.

Moreover, the determining may be based at least in part on predefinedrules (PR) 518 and/or a historical traffic conditions (HTC) 520, whichare accessed in memory 514. Alternatively or additionally, thedetermining may be based at least in part one one or more predictions522 e.g., such as one or more traffic conditions predicted using apretrained predictive model.

Next, computational device 512 may selectively perform a remedial action(RA) 526 when at least some of information 510 is not self-consistent.For example, unreliable or information lacking self-consistency may beexcluded or removed. Alternatively or additionally, redundant data inthe information (such as duplicate or temporally repeating data) may bedeemed as lacking self-consistency and may be removed or excluded bycomputational device 512. In some embodiments, remedial action 526 mayinclude determining an instruction 528 that is provided by interfacecircuit 516 addressed to a traffic-management system (such as computer130). Instruction 528 may modify road signage, traffic signal timing,etc. based at least in part on at least a portion of information 510that is deemed reliable or self-consistent. Note that the modificationprovided to the traffic-management system (including a centralizedtraffic-management computer system and/or a distributed components inthe traffic-management system) may be bounded or limited, e.g., so thatsuspect or incorrect data does not adversely impact thetraffic-management system.

FIG. 6 presents a flow diagram illustrating an example of a method 600for dynamically aggregates vehicles into a group of vehicles using acomputer system, such as one or more computers 120 in computer system122 (FIG. 1 ). During operation, the computer system may receiveinformation (operation 610) corresponding to traffic conditions in anenvironment, where the information is associated with different types ofsources distributed in the environment, and the environment includesmultiple intersections and roadways. Note that the environment mayinclude at least a portion of a city or a municipality. Then, thecomputer system may receive second information (operation 612)corresponding to start locations in the environment of the vehicles anddestination locations in the environment of the vehicles.

Moreover, the computer system may dynamically aggregate the vehiclesinto the group of vehicles (operation 614) based at least in part on thetraffic conditions, the start locations and the destination locations.For example, the computer system may calculate that the vehicles willhave a reduced transit time from their start locations to theirdestination locations when they transit or navigate through theenvironment in the group of vehicles. In some embodiments, thecalculation may use or may leverage a scheduling ornetwork-queue-management technique for improving or optimizing packettransport in a router or a switch in a network, as well as physics-basedconstraints (such as constraints on a spacing between vehicles,acceleration and deceleration rates of a given vehicle, etc.). Note thatdepending on the time of day, day of the week, time of year, and/or thetraffic conditions, the computer system may include fewer or morevehicles in the group of vehicles. Notably, the number of vehicles inthe group of vehicles may be based at least in part on estimatedtransmit times of the vehicles in the group of vehicles (such asestimated transmit times that are computed using a pretrained predictivemodel, e.g., a machine-learning model and/or a neural network). Ingeneral, the group of vehicles may include two or more vehicles thatshare at least a portion of their routes from their start locations totheir destination locations, and for which the estimated transit timesof each of the two or more vehicles is reduced when included in thegroup of vehicles (when compared to the estimated transit times when notincluded in the group of vehicles). However, when it is not advantageous(e.g., when the transmit times of each of the vehicles is reduced), thecomputer system may not aggregate the group of vehicles, e.g., each carmay independently navigate through the environment.

Next, the computer system may provide traffic-management instructions(operation 616) addressed to a traffic-management system, where thetraffic-management instructions allow the vehicles to navigate throughthe environment as the group of vehicles. For example, the instructionsmay be provided to a centralized portion of the traffic-managementsystem or to individual traffic signals or lights (along a route of thegroup of vehicles) in a distributed portion of the traffic-managementsystem. Note that navigating through the environment as the group ofvehicles may include maintaining spatial proximity of the vehicles witheach other. Thus, the vehicles may collectively navigate through theenvironment as a common entity.

In some embodiments of method 200 (FIG. 2 ), 400 and/or 600, there maybe additional or fewer operations. Furthermore, the order of theoperations may be changed, there may be different operations and/or twoor more operations may be combined into a single operation.

FIG. 7 presents a drawing illustrating an example of communication amongelectronic device 110-1, electronic device 110-2, computer 120-1 andcomputer 130. Note that electronic device 110-1 may be included in afirst vehicle and electronic device 110-2 may be included in a secondvehicle. During the traffic-management techniques, computer 120-1 mayreceive information 710 corresponding to traffic conditions in anenvironment. For example, computational device (CD) 712 (such as aprocessor or a graphics processing unit) in computer 120-1 may accessinformation 710 in memory 714 in computer 120-1. Alternatively oradditionally, interface circuit 716 in computer 120-1 may receiveinformation 710 from different types of sources distributed in theenvironment, such as electronic devices 110-1 and/or 110-2.

Then, electronic device 110-1 may provide start location (SL) 718-1 anda destination location (DL) 720-1 to computer 120-1. Moreover,electronic device 110-2 may provide start location 718-2 and adestination location 720-2 to computer 120-1.

After receiving start locations 718 and destination locations 720,interface circuit 716 may provide start locations 718 and destinationlocations 720 to computational device 712. Moreover, computationaldevice 712 dynamically aggregate or group the first vehicle and thesecond vehicle into a group of vehicles (GoV) 722 based at least in parton the traffic conditions corresponding to information 710, startlocations 718 and destination locations 720.

Next, computational device 712 may instruct 724 interface circuit 716 toprovide traffic-management instructions (TMI) 726 addressed to atraffic-management system (such as computer 130), where thetraffic-management instructions 726 allow the first vehicle and thesecond vehicle to navigate through the environment as the group ofvehicles 722. Note that navigating through the environment as the groupof vehicles 722 may include maintaining spatial proximity of the firstvehicle and the second vehicle with each other, such as maintaining aspacing between the first vehicle and the second vehicle that is lessthan a predefined value (e.g., 1-5 car lengths or 15-100 ft). Forexample, the traffic-management instructions 726 may ensure that thefirst vehicle and the second vehicle pass through intersections togetherand/or that the first vehicle and the second vehicle drive sequentiallywithout any intervening vehicles between them. Moreover, thetraffic-management instructions 726 may optionally be dynamicallyprovided to the first vehicle and the second vehicle, so that the firstvehicle and the second vehicle accelerate or decelerate at the same time(e.g., without delay or lag) and with the same or a common magnitude.

While FIGS. 3, 5 and 7 illustrate communication between components usingunidirectional or bidirectional communication with lines having singlearrows or double arrows, in general the communication in a givenoperation in these figures may involve unidirectional or bidirectionalcommunication.

The navigating through the environment as the group of vehicles is shownin FIG. 8 presents a drawing illustrating an example of a group ofvehicles 800. Notably, the traffic-management instructions may ensurethat vehicles 810 in the group of vehicles 800 may maintain spatialproximity, such as a spacing 812 that is less than a predefined value.In some embodiments, spacing 812 may be dynamically adjusted based atleast in part on a speed of the group of vehicles 800, such as one carlength (e.g., 15-20 ft.) per 10 mph or speed. However, in otherembodiments, while spacing 812 may be dynamically adjusted based atleast in part on a speed of the group of vehicles 800, spacing 812 maybe less than one car length (e.g., 15-20 ft.) per 10 mph of speed.Alternatively in some embodiments, spacing 812 may be fixed, such as onecar length (e.g., 15-20 ft.).

Note that the computer system may facilitate the operation of the groupof vehicles 800 and the navigation of the group of vehicles 800 in theenvironment. For example, the traffic-management instructions may ensureeach of vehicles 810 operations as a common entity, such as by jointlyaccelerating and decelerating at the same time (e.g., without lag ordelay) or with a predefined staggered lag or delay (e.g., less than 1 s)along a sequence of vehicles in group of vehicles 800 that is less thana human lag or delay. Moreover, the group of vehicles 800 may accelerateor decelerate using a common magnitude.

Furthermore, the traffic-management instructions may ensure that thattraffic signals (such as traffic signal 814) allows vehicles 810 in thegroup of vehicles 800 to all passthrough intersections together. Forexample, the group of vehicles 810 may be given priority in anintersection, such as by controlling traffic signal 814. Note that whena given vehicle (such as vehicle 810-1) reaches its destination locationor a turnoff from a common route of the group of vehicles 800 for itsdestination location, the traffic-management instructions may removevehicle 810-1 from the group of vehicles 800. More generally, during thenavigation through the environments, one or more vehicles may be addedto or removed from the group of vehicles 800.

In these ways, the dynamically aggregated group of vehicles 800 mayallow vehicles 810 to navigate through the environment more efficientlythan, e.g., vehicles that are not included in the group of vehicles 800.Thus, the dynamic aggregation may reduce travel times, fuel consumptionand pollution associated with the group of vehicles 800.

We now further describe the traffic-management techniques. Congestion inmany countries is at a point where building new roads will not improvetraffic (at best, there may be a short-term improvement before stalemateoccurs again). Moreover, traffic lights or signals typicallyindiscriminately affect all road users by physically controlling theintersection right-of-way.

The disclosed traffic-management techniques may provide improvedperformance, e.g., in the form of coordinated signal timing andauthorized right-of-way, without the need for total system upgrades.Notably, coordinating traffic lights for the reduction of congestion mayprovide a major benefit to the entire economy. Moreover, reducing idletime and the continual loop of acceleration/deceleration to each lightcan reduce emissions, save fuel and improve safety. Furthermore, withtraffic signal information, first-responder or emergency vehicles andmass-transit vehicles (such as buses) can be given advanced notice ofright-of-way traffic conditions along their route.

Additionally, the traffic-management techniques may addresstraffic-industry pain points, such as: traffic control is typically ahardware-based industry (such as traffic signals at intersections, whichare usually only adapted by at most semi-annual traffic studies bythird-party consultants) and is cost-intensive; public transportationusually pays for installation, maintenance, timing studies, and cost ofpriority solutions, and the high cost of competing hardware solutionsoften means that transit agencies only have enough money for a specificsection of roadway or a high-priority bus service; and emergencyresponders (such as fire, police and ambulance) typically use ahardware-based, line-of-sight solution, which may increase equipmentmaintenance problems. Note that traffic-signal maintenance and operationis usually less than 10% of a city traffic engineers responsibility.Moreover, traffic-signal timing can directly affect community well-beingand the cost of doing business (such as shipping costs). Consequently,many cities and municipalities are looking for new ways of handlingtraffic and performing traffic control in their communities. Inaddition, many cities and municipalities are looking to reduce the needfor specialized or proprietary hardware in traffic cabinets and onsignal mast arms, which adds additional complexity and maintenancecosts.

In some embodiments, the traffic-management techniques may be used in avariety of use cases, including: transit signal priority (TSP),emergency vehicle preemption (EVP), and/or signal performance metrics(SPM). Notably, in TSP, machine learning (such as one or more pretrainedpredictive models) may be used to dynamically adjust time-traffic signalcontrollers to provide well-timed priority green lights to mass-transitvehicles serving their routes with minimal disruption to cross traffic.Moreover, in EVP, one or more emergency vehicles (such as police, firetrucks and ambulances) may be tracked in in real-time and traffic-signalcontrollers may be instructed to provide green lights while the one ormore emergency vehicles travel to reach their destination. Furthermore,in SPM, valuable, down-to-the-second insights of individual intersectionactivity and/or traffic-signal controller configuration and performancemay be determined and/or provided.

These capabilities (which be implemented in a local and/or a cloud-basedsolution) may allow machine learning to be used to analyze multiple liveor real-time data feeds and to prioritize the flow of vehicles bycontrolling traffic signals in real-time across and between entire cityregions, zones or grids. Consequently, the traffic-management techniquesmay allow big data to be applied to traffic flow.

Moreover, the traffic-management techniques may provide: prescriptivetraffic-signal timing from vehicle-arrival predictions (and, moregenerally, predicted traffic conditions); vehicle-arrival predictions(and, more generally, predicted traffic conditions) based at least inpart on machine learning; real-time vehicle data processing and decisionmaking; and/or standardized/simplified connection handling betweendifferent vehicle data stores.

Furthermore, the traffic-management techniques may offer: reduced costrelative to hardware-based solutions (e.g., because of the reduction orelimination of equipment at intersections); improved flexibility (suchas the ability to update pretrained predictive models to addresstransmit route changes); and/or a less complicated implementation (e.g.,communication between the computer system and a traffic-managementsystem may occur via one electronic device that is installed at atraffic-management center in a given city or municipality, and differentservices, such as TSP, EVP, etc. can be added without any additionalequipment).

Based at least in part on the traffic-management techniques, trafficlights in communities may rarely be manually configured by trafficengineers. Instead, the computer system may know the configuration oftraffic lights based at least in part on the integrated traffic platformthat uses multiple different types of sources (such as different vehicleand signal data sources) to dynamically configure traffic light. In someembodiments, the traffic-management techniques may reduce traffic in agiven community by at least 30%.

Moreover, the traffic-management techniques may provide TSP and EVP inmultiple communities, and may be easily deployed in a new community.Furthermore, mass-transit agencies may have increased ridership, lowerfuel consumption, lower labor costs, and/or expanded service.Additionally, emergency-vehicle response times may be significantlyreduced, thereby saving lives and protecting communities.

Thus, the traffic-management techniques may manage the informationexchange between vehicles and roadways to control traffic signals and/ortraffic signage to reduce congestion, increase safety, and/or save time.These capabilities may allow the way vehicles choose their routes aroundcities to be managed. Moreover, as autonomous vehicles advance intomarkets, the traffic-management techniques may be expanded to assist theautonomous vehicles with navigation and route planning.

Note that the traffic-management techniques may be used by a widevariety of types of customers, including: local, state and/or federalgovernment agencies, state and local transportation departments,mass-transit agencies, police departments, fire departments, privateambulance services, traffic engineers, transit and urban planners,and/or first responders (such as an operations team).

We now describe embodiments of an electronic device, which may performat least some of the operations in the traffic-management techniques.FIG. 9 presents a block diagram illustrating an example of an electronicdevice 900 in accordance with some embodiments, such as one ofelectronic devices 110, electronic device 112, access point 114, basestation 116, one of computers 120, etc. This electronic device includesprocessing subsystem 910, memory subsystem 912, and networking subsystem914. Processing subsystem 910 includes one or more devices configured toperform computational operations. For example, processing subsystem 910can include one or more microprocessors, ASICs, microcontrollers,programmable-logic devices, one or more graphics process units (GPUs)and/or one or more digital signal processors (DSPs).

Memory subsystem 912 includes one or more devices for storing dataand/or instructions for processing subsystem 910 and networkingsubsystem 914. For example, memory subsystem 912 can include dynamicrandom access memory (DRAM), static random access memory (SRAM), and/orother types of memory. In some embodiments, instructions for processingsubsystem 910 in memory subsystem 912 include: one or more programmodules or sets of instructions (such as program instructions 922 oroperating system 924), which may be executed by processing subsystem910. Note that the one or more computer programs may constitute acomputer-program mechanism. Moreover, instructions in the variousmodules in memory subsystem 912 may be implemented in: a high-levelprocedural language, an object-oriented programming language, and/or inan assembly or machine language. Furthermore, the programming languagemay be compiled or interpreted, e.g., configurable or configured (whichmay be used interchangeably in this discussion), to be executed byprocessing subsystem 910.

In addition, memory subsystem 912 can include mechanisms for controllingaccess to the memory. In some embodiments, memory subsystem 912 includesa memory hierarchy that comprises one or more caches coupled to a memoryin electronic device 900. In some of these embodiments, one or more ofthe caches is located in processing subsystem 910.

In some embodiments, memory subsystem 912 is coupled to one or morehigh-capacity mass-storage devices (not shown). For example, memorysubsystem 912 can be coupled to a magnetic or optical drive, asolid-state drive, or another type of mass-storage device. In theseembodiments, memory subsystem 912 can be used by electronic device 900as fast-access storage for often-used data, while the mass-storagedevice is used to store less frequently used data.

Networking subsystem 914 includes one or more devices configured tocouple to and communicate on a wired and/or wireless network (i.e., toperform network operations), including: control logic 916, an interfacecircuit 918 and one or more antennas 920 (or antenna elements) and/orinput/output (I/O) port 930. (While FIG. 9 includes one or more antennas920, in some embodiments electronic device 900 includes one or morenodes, such as nodes 908, e.g., a network node that can be coupled orconnected to a network or link, or an antenna node or a pad that can becoupled to the one or more antennas 920. Thus, electronic device 900 mayor may not include the one or more antennas 920.) For example,networking subsystem 914 can include a Bluetooth™ networking system, acellular networking system (e.g., a 3G/4G/5G network such as UMTS, LTE,etc.), a universal serial bus (USB) networking system, a networkingsystem based on the standards described in IEEE 802.11 (e.g., a Wi-Fi®networking system), an Ethernet networking system, a cable modemnetworking system, and/or another networking system.

Networking subsystem 914 includes processors, controllers,radios/antennas, sockets/plugs, and/or other devices used for couplingto, communicating on, and handling data and events for each supportednetworking system. Note that mechanisms used for coupling to,communicating on, and handling data and events on the network for eachnetwork system are sometimes collectively referred to as a ‘networkinterface’ for the network system. Moreover, in some embodiments a‘network’ or a ‘connection’ between the electronic devices does not yetexist. Therefore, electronic device 900 may use the mechanisms innetworking subsystem 914 for performing simple wireless communicationbetween the electronic devices, e.g., transmitting advertising or beaconframes and/or scanning for advertising frames transmitted by otherelectronic devices as described previously.

Within electronic device 900, processing subsystem 910, memory subsystem912, and networking subsystem 914 are coupled together using bus 928.Bus 928 may include an electrical, optical, and/or electro-opticalconnection that the subsystems can use to communicate commands and dataamong one another. Although only one bus 928 is shown for clarity,different embodiments can include a different number or configuration ofelectrical, optical, and/or electro-optical connections among thesubsystems.

In some embodiments, electronic device 900 includes a display subsystem926 for displaying information on a display, which may include a displaydriver and the display, such as a liquid-crystal display, a multi-touchtouchscreen, etc.

Electronic device 900 can be (or can be included in) any electronicdevice with at least one network interface. For example, electronicdevice 900 can be (or can be included in): a computer system (such as acloud-based computer system or a distributed computer system), a desktopcomputer, a laptop computer, a subnotebook/netbook, a server, a tabletcomputer, a smartphone, a cellular telephone, a smartwatch, aconsumer-electronic device, a portable computing device, an accesspoint, a transceiver, a router, a switch, communication equipment, acomputer network device, a controller, test equipment, a printer, a car,a truck, a bus, a train, a a terrestrial or airborne drone, a robot,and/or another electronic device.

Although specific components are used to describe electronic device 900,in alternative embodiments, different components and/or subsystems maybe present in electronic device 900. For example, electronic device 900may include one or more additional processing subsystems, memorysubsystems, networking subsystems, and/or display subsystems.Additionally, one or more of the subsystems may not be present inelectronic device 900. Moreover, in some embodiments, electronic device900 may include one or more additional subsystems that are not shown inFIG. 9 , such as a user-interface subsystem 932. Also, although separatesubsystems are shown in FIG. 9 , in some embodiments some or all of agiven subsystem or component can be integrated into one or more of theother subsystems or component(s) in electronic device 900. For example,in some embodiments program instructions 922 are included in operatingsystem 924 and/or control logic 916 is included in interface circuit918.

Moreover, the circuits and components in electronic device 900 may beimplemented using any combination of analog and/or digital circuitry,including: bipolar, PMOS and/or NMOS gates or transistors. Furthermore,signals in these embodiments may include digital signals that haveapproximately discrete values and/or analog signals that have continuousvalues. Additionally, components and circuits may be single-ended ordifferential, and power supplies may be unipolar or bipolar.

An integrated circuit (which is sometimes referred to as a‘communication circuit’) may implement some or all of the functionalityof networking subsystem 914 (or, more generally, of electronic device900). The integrated circuit may include hardware and/or softwaremechanisms that are used for transmitting wireless signals fromelectronic device 900 and receiving signals at electronic device 900from other electronic devices. Aside from the mechanisms hereindescribed, radios are generally known in the art and hence are notdescribed in detail. In general, networking subsystem 914 and/or theintegrated circuit can include any number of radios. Note that theradios in multiple-radio embodiments function in a similar way to thedescribed single-radio embodiments.

In some embodiments, networking subsystem 914 and/or the integratedcircuit include a configuration mechanism (such as one or more hardwareand/or software mechanisms) that configures the radio(s) to transmitand/or receive on a given communication channel (e.g., a given carrierfrequency). For example, in some embodiments, the configurationmechanism can be used to switch the radio from monitoring and/ortransmitting on a given communication channel to monitoring and/ortransmitting on a different communication channel. (Note that‘monitoring’ as used herein comprises receiving signals from otherelectronic devices and possibly performing one or more processingoperations on the received signals)

In some embodiments, an output of a process for designing the integratedcircuit, or a portion of the integrated circuit, which includes one ormore of the circuits described herein may be a computer-readable mediumsuch as, for example, a magnetic tape or an optical or magnetic disk.The computer-readable medium may be encoded with data structures orother information describing circuitry that may be physicallyinstantiated as the integrated circuit or the portion of the integratedcircuit. Although various formats may be used for such encoding, thesedata structures are commonly written in: Caltech Intermediate Format(CIF), Calma GDS II Stream Format (GDSII), Electronic Design InterchangeFormat (EDIF), OpenAccess (OA), or Open Artwork System InterchangeStandard (OASIS). Those of skill in the art of integrated circuit designcan develop such data structures from schematics of the type detailedabove and the corresponding descriptions and encode the data structureson the computer-readable medium. Those of skill in the art of integratedcircuit fabrication can use such encoded data to fabricate integratedcircuits that include one or more of the circuits described herein.

While the preceding discussion used Ethernet, a cellular-telephonecommunication protocol and a Wi-Fi communication protocol as anillustrative example, in other embodiments a wide variety ofcommunication protocols and, more generally, wired and/or wirelesscommunication techniques may be used. Thus, the traffic-managementtechniques may be used with a variety of network interfaces.Furthermore, while some of the operations in the preceding embodimentswere implemented in hardware or software, in general the operations inthe preceding embodiments can be implemented in a wide variety ofconfigurations and architectures. Therefore, some or all of theoperations in the preceding embodiments may be performed in hardware, insoftware or both. For example, at least some of the operations in thetraffic-management techniques may be implemented using programinstructions 922, operating system 924 (such as a driver for interfacecircuit 918) or in firmware in interface circuit 918. Alternatively oradditionally, at least some of the operations in the traffic-managementtechniques may be implemented in a physical layer, such as hardware ininterface circuit 918.

In the preceding description, we refer to ‘some embodiments.’ Note that‘some embodiments’ describes a subset of all of the possibleembodiments, but does not always specify the same subset of embodiments.Moreover, note that numerical values in the preceding embodiments areillustrative examples of some embodiments. In other embodiments of thetraffic-management techniques, different numerical values may be used.

The foregoing description is intended to enable any person skilled inthe art to make and use the disclosure, and is provided in the contextof a particular application and its requirements. Moreover, theforegoing descriptions of embodiments of the present disclosure havebeen presented for purposes of illustration and description only. Theyare not intended to be exhaustive or to limit the present disclosure tothe forms disclosed. Accordingly, many modifications and variations willbe apparent to practitioners skilled in the art, and the generalprinciples defined herein may be applied to other embodiments andapplications without departing from the spirit and scope of the presentdisclosure. Additionally, the discussion of the preceding embodiments isnot intended to limit the present disclosure. Thus, the presentdisclosure is not intended to be limited to the embodiments shown, butis to be accorded the widest scope consistent with the principles andfeatures disclosed herein.

What is claimed is:
 1. A computer system, comprising: an interfacecircuit configured to communicate with electronic devices; a processor,coupled to the interface circuit, configured to execute programinstructions; and memory, coupled to the processor, storing the programinstructions, wherein, when executed by the processor, the programinstructions cause the computer system to perform operations comprising:receiving information corresponding to traffic conditions associatedwith traffic flows in an environment, wherein the information isassociated with different types of sources distributed in theenvironment, the environment comprises multiple intersections androadways, and the types of data sources are associated with: municipalvehicles, mass-transit vehicles, or both; identifying an event in atleast a portion of the environment based at least in part on theinformation, wherein identifying the event comprises predicting a changein a traffic condition in the environment in a subsequent time interval;and performing a remedial action based at least in part on theidentified event.
 2. The computer system of claim 1, wherein theenvironment comprises at least a portion of a city or a municipality. 3.The computer system of claim 1, wherein identifying the event is basedat least in part on historical traffic conditions in the environment. 4.The computer system of claim 1, wherein identifying the event comprisesdetermining a change in the traffic conditions after the predictedchange has occurred.
 5. The computer system of claim 1, whereinidentifying the event comprises comparing the traffic conditions topredefined signatures of different types of events.
 6. The computersystem of claim 1, wherein the event is identified using a pretrainedpredictive model.
 7. The computer system of claim 1, wherein at leastsome of the information comprises real-time information that is receivedas it is acquired by a given type of source.
 8. The computer system ofclaim 1, wherein receiving the information comprises: accessing theinformation in memory associated with the computer system, receiving theinformation from the different types of sources, or both.
 9. Thecomputer system of claim 1, wherein the remedial action comprises:providing an alert about the event; providing an instruction based atleast in part on the event; or modifying traffic management in at leastthe portion of the environment.
 10. The computer system of claim 9,wherein, when the event comprises an accident at a location in theenvironment, the modification to the traffic management dynamicallyreduces a probability of a future occurrence of an accident at thelocation.
 11. The computer system of claim 9, wherein the alert or theinstruction is addressed to delivery vehicles.
 12. The computer systemof claim 9, wherein the alert or the instructions is based at least inpart on a predicted impact of or corresponding to the event on a futuretraffic condition.
 13. The computer system of claim 9, wherein modifyingthe traffic management comprises changing: a number of vehicles in agroup of vehicles allowed through an intersection during atraffic-signal cycle, a spacing between vehicles in the group, or both.14. The computer system of claim 1, wherein the event is other than atraffic event and impacts the traffic conditions.
 15. The computersystem of claim 14, wherein the event comprises one or more of: asporting event, an entertainment event, or a weather condition.
 16. Thecomputer system of claim 1, wherein the types of data sources areassociated with one or more of: emergency services calls, navigationsoftware, rideshare software, rideshare vehicles, calendar software,parking meters, or parking lots.
 17. The computer system of claim 1,wherein the remedial action comprises dynamically controlling trafficflows between different predefined regions in the environment based atleast in part on predefined traffic parameters or constraints.
 18. Anon-transitory computer-readable storage medium for use in conjunctionwith a computer system, the computer-readable storage medium storingprogram instructions, wherein, when executed by the computer system, theprogram instructions cause the computer system to perform operationscomprising: receiving information corresponding to traffic conditionsassociated with traffic flows in an environment, wherein the informationis associated with different types of sources distributed in theenvironment, the environment comprises multiple intersections androadways, and the types of data sources are associated with: municipalvehicles, mass-transit vehicles, or both; identifying an event in atleast a portion of the environment based at least in part on theinformation wherein identifying the event comprises predicting a changein a traffic condition in the environment in a subsequent time interval;and performing a remedial action based at least in part on theidentified event.
 19. A method for performing a remedial action,comprising: by a computer system: receiving information corresponding totraffic conditions associated with traffic flows in an environment,wherein the information is associated with different types of sourcesdistributed in the environment, the environment comprises multipleintersections and roadways, and the types of data sources are associatedwith: municipal vehicles, mass-transit vehicles, or both; identifying anevent in at least a portion of the environment based at least in part onthe information wherein identifying the event comprises predicting achange in a traffic condition in the environment in a subsequent timeinterval; and performing the remedial action based at least in part onthe identified event.
 20. The method of claim 19, wherein the event isother than a traffic event and impacts the traffic conditions.